The present invention relates to a new high-capacity packet network, more particularly, the present invention relates to providing access to such a high-capacity packet network.
A data communication network may be modeled as a set of nodes (or modules) interconnected by links. The purpose of such a data network may be seen to be the transfer of data from a traffic source to a traffic sink. As traffic sources and sinks are often paired, this transfer of data may be said to occur between one traffic source/sink and another traffic source/sink. The nodes that connect to both the data network and to traffic sources/sinks may be called edge modules (or edge nodes or edge routers), while those nodes that connect only to other nodes within the data network may be called core modules. When a packet of data traffic arrives at an edge module, the edge module may examine the packet to determine the destination of the packet. Based on this determination, the edge module may then select a route, perhaps from a predetermined table of routes (a routing table), for the packet to take through the core of the network to an edge module connected to the packet destination. Such a route selection process may be designed to meet certain criteria specified by the packet or known to be related to the traffic source. Further, the route selection process may be performed in such a way as to optimize use of the network resources.
In U.S. patent application Ser. No. 09/624,079, titled xe2x80x9cMulti-Dimensional Lattice Network,xe2x80x9d filed on Jul. 24, 2000, the contents of which are hereby incorporated herein by reference, an architecture of a high-capacity network is described. The high-capacity network is an N-dimensional lattice network, with N greater than 1, that comprises a plurality of edge modules having respective identities. Each of the edge modules is directly connected to N core modules for switching connections between edge modules. The core modules of this high-capacity network may be agile switches that reconfigure to adapt to changing traffic loads. Further, addressing of nodes within this high-capacity network is coordinate-based and routing of packets is simplified relative to known addressing and routing methods.
The high-capacity network is structured to avoid the need for complex protocols such as those used in the current Internet. Addressing schemes in the high-capacity network have the potential to allow enormous growth in numbers of nodes interconnected and to provide many of the services supplied by the present Internet as well as many services not yet imagined.
To take advantage of such a high-capacity network, traffic sources/sinks must be provided access to the high-capacity network in a simple and straightforward manner. Further, since a high-capacity network may need to pass data to a current packet network such as the Internet, an addressing scheme which provides transparent data flow between such networks is required.
A simple access device allows a traffic source access to the described high-capacity network. Once connected to a traffic source, an edge node in the high-capacity network can assign a sub-network address to the traffic source so that the traffic source may also serve as a sink for data traffic. Although the sub-network address assigned to the traffic source may bear little resemblance to a network address for the edge node, distant edge nodes may route traffic to a traffic sink having such a sub-network address easily and flexibly. Features may be added to the access device, which may be little more than a multiplexer, but, for the most part, the edge nodes make the routing decisions. Data transfer from the current Internet to the high-capacity network and vice versa can be facilitated by requiring the particular edge nodes in the high-capacity network that act as a gateway be bilingual, that is, understand both a simple high-capacity network-specific routing protocol and Internet protocols.
In accordance with an aspect of the present invention there is provided a method of providing access to a high-capacity data network at an edge node of the high-capacity data network. The method includes, where an access device connects to the edge node, assigning a device number to the access device, if not already assigned and, upon receipt of an indication of a traffic source from the access device, assigning a user number to the traffic source, if not already assigned. The method further includes, upon assigning the user number, formulating a sub-network address for the traffic source and broadcasting the sub-network address to a pre-defined set of nodes. In another aspect of the invention an edge node is provided for performing this method. In a further aspect of the present invention, there is provided a software medium that permits a general purpose computer to carry out this method.
In accordance with another aspect of the present invention there is provided, at an edge node in a high-capacity data network communicatively coupled to other nodes in the high-capacity data network and to an access device, a method of providing the access device with information for use in a routing decision. The method includes receiving, from the access device, a request for a cost indication associated with transmitting a packet to a destination, determining the cost, formulating the cost indication based on the cost and transmitting the cost indication to the access device. In another aspect of the invention an edge node is provided for performing this method. In a further aspect of the present invention, there is provided a software medium that permits a general purpose computer to carry out this method.
In accordance with a further aspect of the present invention there is provided a method of providing access to a high capacity network. The method includes receiving a packet from a traffic source addressed to a traffic sink and, based on a sub-network address for the traffic sink in the packet, determining a set of nodes of the high capacity network providing connectivity to the traffic sink. The method further includes selecting one node from the set of nodes as a destination node and, after the selecting, determining a route through nodes of the high capacity network to the destination node. In another aspect of the invention an edge node is provided for performing this method. In a further aspect of the present invention, there is provided a software medium that permits a general purpose computer to carry out this method.
In accordance with a still further aspect of the present invention there is provided, at an edge node in a high-capacity data network, a method of determining a route for a connection to a traffic sink including receiving a connection request from a traffic source, the connection request including a destination sub-network address, parsing the destination sub-network address to determine a destination constellation and an access code, selecting a destination edge node in the destination constellation according to the access code and selecting a route to the destination edge node. In another aspect of the invention an edge node is provided for performing this method. In a further aspect of the present invention, there is provided a software medium that permits a general purpose computer to carry out this method.
In accordance with another aspect of the present invention there is provided, at a first node in a first packet network using a first communication protocol, a method of routing a packet from a second node in a second packet network using a second communication protocol to a destination in the first packet network. The method includes receiving the packet using the second communication protocol, examining the packet to determine the destination, selecting a route through the first packet network to the destination and transmitting the packet to the destination using the first communication protocol. In another aspect of the invention an edge node is provided for performing this method. In a further aspect of the present invention, there is provided a software medium that permits a general purpose computer to carry out this method.
In accordance with still another aspect of the present invention there is provided, at a first node in a first packet network using a first communication protocol, a method of routing a packet from a source in the first packet network to a destination in a second packet network using a second communication protocol. The method includes receiving the packet using the first communication protocol, examining the packet to determine the destination, selecting a route through the second packet network to the destination and transmitting the packet to the destination using the second communication protocol. In a further aspect of the present invention, there is provided a software medium that permits a general purpose computer to carry out this method.
In accordance with yet another aspect of the present invention there is provided a method of providing information to a pre-defined set of nodes, the information regarding an access device. The method includes, where an access device connects to the edge node, assigning a device number to the access device, if not already assigned. The method further includes, upon assigning the device number, formulating a welcome message indicating an association of the device number to the access device and broadcasting the welcome message to the pre-defined set of nodes.
In accordance with a yet further aspect of the present invention there is provided a format for a data packet including a sub-network address identifying a traffic sink by connection to an access device and a constellation. The sub-network address includes an indication of a constellation number associated with the constellation; an indication of a length of the indication of the constellation number; an indication of a device number associated with the access device; an indication of a length of the indication of the device number; an indication of a user number associated with the traffic source; an indication of specific edge nodes in the constellation to which the access device connects; and an indication of a length of the data packet.
In accordance with still another aspect of the present invention there is provided a computer data signal, embodied in a carrier wave, including a data packet that includes an indication of a constellation number associated with a constellation; an indication of a length of the indication of the constellation number; an indication of a device number associated with an access device; an indication of a length of the indication of the device number; an indication of a user number associated with a traffic source; an indication of specific edge nodes in the constellation to which the access device connects; and an indication of a length of the data packet.